// 星际网咖设计系统
:root {
  // 主色调 - 科技蓝
  --color-primary: #007aff;
  --color-primary-light: #5ac8fa;
  --color-primary-dark: #0056cc;
  
  // 辅助色
  --color-success: #34c759;
  --color-warning: #ff9500;
  --color-error: #ff3b30;
  --color-info: #5ac8fa;
  
  // 中性色
  --color-text-primary: #1d1d1f;
  --color-text-secondary: #86868b;
  --color-text-tertiary: #c7c7cc;
  --color-border: #f2f2f7;
  --color-background: #f5f5f5;
  --color-card: #ffffff;
  
  // 网咖特色色彩
  --color-gaming: #ff6b35;
  --color-vip: #ff9500;
  --color-premium: #af52de;
  
  // 间距系统
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  
  // 圆角
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-xxl: 20px;
  
  // 阴影
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 2px 12px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 8px 24px rgba(0, 0, 0, 0.16);
  
  // 字体大小
  --font-size-xs: 10px;
  --font-size-sm: 12px;
  --font-size-md: 14px;
  --font-size-lg: 16px;
  --font-size-xl: 18px;
  --font-size-xxl: 24px;
  --font-size-title: 32px;
  
  // 行高
  --line-height-tight: 1.2;
  --line-height-normal: 1.4;
  --line-height-relaxed: 1.6;
  
  // 动画
  --transition-fast: 0.15s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s ease;
}

// 重置样式
* {
  box-sizing: border-box;
}

// 网咖主题渐变
.gradient-primary {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
}

.gradient-gaming {
  background: linear-gradient(135deg, var(--color-gaming), var(--color-warning));
}

.gradient-vip {
  background: linear-gradient(135deg, var(--color-vip), var(--color-gaming));
}

.gradient-premium {
  background: linear-gradient(135deg, var(--color-premium), var(--color-primary));
}

// 座位状态颜色
.seat-available {
  background: var(--color-success);
  color: white;
}

.seat-occupied {
  background: var(--color-error);
  color: white;
}

.seat-selected {
  background: var(--color-primary);
  color: white;
  box-shadow: 0 0 0 2px var(--color-primary);
}

.seat-maintenance {
  background: var(--color-warning);
  color: white;
}

.seat-vip {
  background: var(--color-vip);
  color: white;
}

// 订单状态颜色
.order-pending {
  color: var(--color-warning);
  background: rgba(255, 149, 0, 0.1);
}

.order-confirmed {
  color: var(--color-primary);
  background: rgba(0, 122, 255, 0.1);
}

.order-in-progress {
  color: var(--color-success);
  background: rgba(52, 199, 89, 0.1);
}

.order-completed {
  color: var(--color-text-secondary);
  background: rgba(142, 142, 147, 0.1);
}

.order-cancelled {
  color: var(--color-error);
  background: rgba(255, 59, 48, 0.1);
}

// 会员等级颜色
.member-bronze {
  color: #cd7f32;
  background: rgba(205, 127, 50, 0.1);
}

.member-silver {
  color: #c0c0c0;
  background: rgba(192, 192, 192, 0.1);
}

.member-gold {
  color: #ffd700;
  background: rgba(255, 215, 0, 0.1);
}

.member-platinum {
  color: #e5e4e2;
  background: rgba(229, 228, 226, 0.1);
}

.member-diamond {
  color: var(--color-premium);
  background: rgba(175, 82, 222, 0.1);
}

// 网咖特色按钮
.btn-gaming {
  background: var(--color-gaming);
  color: white;
  box-shadow: 0 2px 8px rgba(255, 107, 53, 0.3);
  
  &:hover {
    background: #e55a2b;
  }
  
  &:active {
    transform: scale(0.98);
  }
}

.btn-vip {
  background: linear-gradient(135deg, var(--color-vip), var(--color-gaming));
  color: white;
  box-shadow: 0 2px 8px rgba(255, 149, 0, 0.3);
  
  &:active {
    transform: scale(0.98);
  }
}

// 网咖特色卡片
.card-gaming {
  background: linear-gradient(135deg, rgba(255, 107, 53, 0.1), rgba(255, 149, 0, 0.1));
  border: 1px solid rgba(255, 107, 53, 0.2);
}

.card-vip {
  background: linear-gradient(135deg, rgba(255, 149, 0, 0.1), rgba(255, 107, 53, 0.1));
  border: 1px solid rgba(255, 149, 0, 0.2);
}

.card-premium {
  background: linear-gradient(135deg, rgba(175, 82, 222, 0.1), rgba(0, 122, 255, 0.1));
  border: 1px solid rgba(175, 82, 222, 0.2);
}

// 网咖特色图标
.icon-gaming {
  color: var(--color-gaming);
}

.icon-vip {
  color: var(--color-vip);
}

.icon-premium {
  color: var(--color-premium);
}

// 动画效果
.fade-in {
  animation: fadeIn var(--transition-normal);
}

.slide-up {
  animation: slideUp var(--transition-normal);
}

.bounce-in {
  animation: bounceIn var(--transition-slow);
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

// 响应式设计
@media (max-width: 375px) {
  :root {
    --font-size-xs: 9px;
    --font-size-sm: 11px;
    --font-size-md: 13px;
    --font-size-lg: 15px;
    --font-size-xl: 17px;
    --font-size-xxl: 22px;
    --font-size-title: 28px;
    
    --spacing-xs: 3px;
    --spacing-sm: 6px;
    --spacing-md: 12px;
    --spacing-lg: 18px;
    --spacing-xl: 24px;
    --spacing-xxl: 36px;
  }
}

// 暗色模式支持
@media (prefers-color-scheme: dark) {
  :root {
    --color-text-primary: #ffffff;
    --color-text-secondary: #a1a1a6;
    --color-text-tertiary: #636366;
    --color-border: #38383a;
    --color-background: #000000;
    --color-card: #1c1c1e;
  }
}
